package com.wangdong.rxjavaandroid.javaobserver.demo1;

import java.util.ArrayList;
import java.util.List;

/**
 * 老师
 */
public class Teacher {

    private String teacherNum = "110";

    public String getTeacherNum() {
        return teacherNum;
    }

    public void setTeacherNum(String teacherNum) {
        this.teacherNum = teacherNum;
        //通过此方法修改teacherNum使用调用 通知
        notifyObservers();
    }

    /**如果有多个观察者学生就建立一个集合保存他们
     * */
    List<IStudent> students = new ArrayList<>();

    /**
     * 添加 观察者者学生
     */
    public void addObserver(IStudent student) {
        students.add(student);
    }

    /**
     * 刪除 观察者中的学生
     */
    public void deleteObserver(IStudent student) {
        students.remove(student);
    }

    /**
     * 通知 观察者 学生 的方法
     */
    public void notifyObservers() {
        for (IStudent studentobserver:students) {
            studentobserver.updateInfo(teacherNum);
        }
    }

}
